Skip to content

Test out parallel frontend via crater#146237

Open
zetanumbers wants to merge 1 commit intorust-lang:mainfrom
zetanumbers:parallel-frontend-by-default
Open

Test out parallel frontend via crater#146237
zetanumbers wants to merge 1 commit intorust-lang:mainfrom
zetanumbers:parallel-frontend-by-default

Conversation

@zetanumbers
Copy link
Copy Markdown
Contributor

@zetanumbers zetanumbers commented Sep 5, 2025

View all comments

I would like to help push progress on parallel compiler. I think it will be necessary at some point to test compiler in its multi-threaded mode (we already "have" parallel compiler but it is single-threaded by default) via crater. It would allow us to diagnose new issues, measure impact on the ecosystem and estimate amount of remaining work.

I have modified compiler to use "num_cpus" number of 8 threads by default. But I am not sure if there's better value for the cloud environment, so please tell if there is one. I am also not aware of any other nuances of cloud computing, but @Mark-Simulacrum on zulip have confirmed it should be fine.

I believe build-and-test crater mode should provide us with more useful information than the other modes, but if necessary you can scale it down to just build only.

Related zulip thread: #t-compiler/parallel-rustc > Run crater with `-Zthreads=$NUM_CPUS` set

EDIT: Switched from num_cpus to 8 threads

@rustbot
Copy link
Copy Markdown
Collaborator

rustbot commented Sep 5, 2025

r? @petrochenkov

rustbot has assigned @petrochenkov.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Sep 5, 2025
@lqd
Copy link
Copy Markdown
Member

lqd commented Sep 5, 2025

@bors try

rust-bors bot added a commit that referenced this pull request Sep 5, 2025
…try>

Test out parallel frontend via crater
@rust-bors

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@petrochenkov petrochenkov added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 5, 2025
@bjorn3
Copy link
Copy Markdown
Member

bjorn3 commented Sep 5, 2025

@bors try spurious failure

@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors bot commented Sep 5, 2025

Unknown argument "spurious". Run @bors2 help to see available commands.

@bjorn3
Copy link
Copy Markdown
Member

bjorn3 commented Sep 5, 2025

Never mind, that was PR CI, not the try job.

@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors bot commented Sep 5, 2025

☀️ Try build successful (CI)
Build commit: d79d87d (d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6, parent: ad85bc524b1ad696e42061ad8338d382dffbdbe5)

@petrochenkov
Copy link
Copy Markdown
Contributor

@craterbot build-and-test

@craterbot
Copy link
Copy Markdown
Collaborator

🚨 Error: failed to parse the command

🆘 If you have any trouble with Crater please ask in t-infra on Zulip
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@petrochenkov
Copy link
Copy Markdown
Contributor

@craterbot run mode=build-and-test

@craterbot
Copy link
Copy Markdown
Collaborator

👌 Experiment pr-146237 created and queued.
🤖 Automatically detected try build d79d87d
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Copy Markdown
Collaborator

🚧 Experiment pr-146237 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Copy Markdown
Collaborator

🎉 Experiment pr-146237 is completed!
📊 182 regressed and 154 fixed (694485 total)
📊 115635 spurious results on the retry-regessed-list.txt, consider a retry1 if this is a significant amount.
📰 Open the summary report.

⚠️ If you notice any spurious failure please add them to the denylist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

Footnotes

  1. re-run the experiment with crates=https://crater-reports.s3.amazonaws.com/pr-146237/retry-regressed-list.txt

@zetanumbers
Copy link
Copy Markdown
Contributor Author

zetanumbers commented Sep 18, 2025

OOM build failures increasing from 4.5% to 13.5% is concerning if we will have more that one thread enabled by default one day. I hypothesized in the zulip thread it comes from increased RAM consumption during parallel compilation. I guess if we set threads to num_cpus (which is our eventual goal) this problem would become less noticeable. So I have reverted to this behavior to see what happens now.

@craterbot run mode=build-only crates=https://crater-reports.s3.amazonaws.com/pr-146237/retry-regressed-list.txt

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 23, 2025
@petrochenkov
Copy link
Copy Markdown
Contributor

@craterbot p=1

@craterbot
Copy link
Copy Markdown
Collaborator

📝 Configuration of the pr-146237-1 experiment changed.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Copy Markdown
Collaborator

🚧 Experiment pr-146237-1 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Copy Markdown
Collaborator

🎉 Experiment pr-146237-1 is completed!
📊 5 regressed and 3 fixed (115451 total)
📊 30677 spurious results on the retry-regessed-list.txt, consider a retry1 if this is a significant amount.
📰 Open the summary report.

⚠️ If you notice any spurious failure please add them to the denylist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

Footnotes

  1. re-run the experiment with crates=https://crater-reports.s3.amazonaws.com/pr-146237-1/retry-regressed-list.txt

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Sep 28, 2025
@ywxt
Copy link
Copy Markdown
Contributor

ywxt commented Sep 28, 2025

⚠️ Try build based on commit 34fd685, but latest commit is 77f6c01. Did you forget to make a new try build?

Did we forget to try build or not?

@SparrowLii
Copy link
Copy Markdown
Member

@bors try

@rust-bors

This comment has been minimized.

rust-bors bot added a commit that referenced this pull request Sep 28, 2025
…try>

Test out parallel frontend via crater
@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors bot commented Sep 28, 2025

☀️ Try build successful (CI)
Build commit: 4987e9d (4987e9d4227139400384ab59296ffee3b0fb1183, parent: c7f6aa2869acdbf014d094c6e427e554e160b6db)

@SparrowLii
Copy link
Copy Markdown
Member

@craterbot
Copy link
Copy Markdown
Collaborator

👌 Experiment pr-146237-2 created and queued.
🤖 Automatically detected try build 4987e9d
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 29, 2025
@SparrowLii
Copy link
Copy Markdown
Member

@craterbot p=1

@craterbot
Copy link
Copy Markdown
Collaborator

📝 Configuration of the pr-146237-2 experiment changed.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Copy Markdown
Collaborator

🚧 Experiment pr-146237-2 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Copy Markdown
Collaborator

🎉 Experiment pr-146237-2 is completed!
📊 3 regressed and 1 fixed (115430 total)
📊 32026 spurious results on the retry-regessed-list.txt, consider a retry1 if this is a significant amount.
📰 Open the summary report.

⚠️ If you notice any spurious failure please add them to the denylist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

Footnotes

  1. re-run the experiment with crates=https://crater-reports.s3.amazonaws.com/pr-146237-2/retry-regressed-list.txt

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Sep 30, 2025
@petrochenkov petrochenkov added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 30, 2025
@SpriteOvO
Copy link
Copy Markdown
Member

Hi, ping from triage team. This PR has been inactive for a while. What's the status of this PR now? Thanks.

@zetanumbers
Copy link
Copy Markdown
Contributor Author

zetanumbers commented Feb 15, 2026

Hi, ping from triage team. This PR has been inactive for a while. What's the status of this PR now? Thanks.

I plan to rerun crater to see if I am right about zero regressions after #149849 is merged and other small stuff is done. See #t-compiler/parallel-rustc > Steps to enable/stabilize multi-threaded rustc front-end @ 💬

@Dylan-DPC Dylan-DPC added S-blocked Status: Blocked on something else such as an RFC or other implementation work. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Feb 15, 2026
@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors bot commented Mar 28, 2026

☔ The latest upstream changes (presumably #154466) made this pull request unmergeable. Please resolve the merge conflicts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-blocked Status: Blocked on something else such as an RFC or other implementation work. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.